In typical virtualized desktop infrastructure architectures, user displays and input devices are local, and applications execute remotely in a server. Because applications execute remotely, a latency element is introduced due to the network travel time and the application response time. One method for assessing the performance of remote applications is by measuring the response times for various events. These response times are the result of aggregating latency across different components in the architecture. Measuring these latencies, however, is a challenge as measurements must encompass latencies related to both the low level events (such as mouse movements) and the high level events (application launches), as well as work across network boundaries and a range of client devices.
Virtual Desktop Infrastructure (VDI) deployments are rapidly becoming popular. In VDI deployments, a user's desktop is typically hosted in a datacenter or cloud, and the user remotely interacts with her desktop via a variety of endpoint devices, including desktops, laptops, thin clients, smart phones, tablets, etc. There is a wide variety of advantages to this approach, including cost savings, improved mobility, etc. However, for VDI environments to become ubiquitous, the user should not be constrained in the type of application that can be successfully run. Accordingly, it is necessary to ensure that, when required, sufficient computational resources are made available in the data center, and, without comprising quality, there is sufficient network bandwidth to transmit the desired imagery and audio to the user's endpoint device. In order to ensure proper quality of delivery, it is necessary to automatically monitor video quality, audio quality, and the synchronization of audio and video.